package com.jshoperxms.entity;

import javax.persistence.*;
import java.math.BigDecimal;
import java.math.BigInteger;
import java.util.Objects;

/**
 * Created by sdywcd on 2019/12/12.
 * Des:
 */
@Entity
@Table(name = "pay_member_withdrawals_apply_t", schema = "jshoperxms", catalog = "")
public class PayMemberWithdrawalsApplyT {
    private String id;
    private String memberid;
    private String membername;
    private BigDecimal money;
    private BigInteger applytime;
    private String applytype;
    private String transforaccount;
    private BigInteger createtime;
    private BigInteger updatetime;
    private String status;
    private String drawalsstatus;
    private String reviewnoteReviewnote;
    private String note;
    private int versiont;
    private String reviewed;
    private BigInteger reviewtime;
    private String revieduserid;
    private String istransfer;

    @Id
    @Column(name = "ID", nullable = false, length = 20)
    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    @Basic
    @Column(name = "MEMBERID", nullable = false, length = 20)
    public String getMemberid() {
        return memberid;
    }

    public void setMemberid(String memberid) {
        this.memberid = memberid;
    }

    @Basic
    @Column(name = "MEMBERNAME", nullable = false, length = 100)
    public String getMembername() {
        return membername;
    }

    public void setMembername(String membername) {
        this.membername = membername;
    }

    @Basic
    @Column(name = "MONEY", nullable = false, precision = 2)
    public BigDecimal getMoney() {
        return money;
    }

    public void setMoney(BigDecimal money) {
        this.money = money;
    }

    @Basic
    @Column(name = "APPLYTIME", nullable = false)
    public BigInteger getApplytime() {
        return applytime;
    }

    public void setApplytime(BigInteger applytime) {
        this.applytime = applytime;
    }

    @Basic
    @Column(name = "APPLYTYPE", nullable = false, length = 1)
    public String getApplytype() {
        return applytype;
    }

    public void setApplytype(String applytype) {
        this.applytype = applytype;
    }

    @Basic
    @Column(name = "TRANSFORACCOUNT", nullable = false, length = 100)
    public String getTransforaccount() {
        return transforaccount;
    }

    public void setTransforaccount(String transforaccount) {
        this.transforaccount = transforaccount;
    }

    @Basic
    @Column(name = "CREATETIME", nullable = false)
    public BigInteger getCreatetime() {
        return createtime;
    }

    public void setCreatetime(BigInteger createtime) {
        this.createtime = createtime;
    }

    @Basic
    @Column(name = "UPDATETIME", nullable = false)
    public BigInteger getUpdatetime() {
        return updatetime;
    }

    public void setUpdatetime(BigInteger updatetime) {
        this.updatetime = updatetime;
    }

    @Basic
    @Column(name = "STATUS", nullable = false, length = 1)
    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    @Basic
    @Column(name = "DRAWALSSTATUS", nullable = false, length = 1)
    public String getDrawalsstatus() {
        return drawalsstatus;
    }

    public void setDrawalsstatus(String drawalsstatus) {
        this.drawalsstatus = drawalsstatus;
    }

    @Basic
    @Column(name = "REVIEWNOTE\nREVIEWNOTE", nullable = false, length = 100)
    public String getReviewnoteReviewnote() {
        return reviewnoteReviewnote;
    }

    public void setReviewnoteReviewnote(String reviewnoteReviewnote) {
        this.reviewnoteReviewnote = reviewnoteReviewnote;
    }

    @Basic
    @Column(name = "NOTE", nullable = false, length = 100)
    public String getNote() {
        return note;
    }

    public void setNote(String note) {
        this.note = note;
    }

    @Basic
    @Column(name = "VERSIONT", nullable = false)
    public int getVersiont() {
        return versiont;
    }

    public void setVersiont(int versiont) {
        this.versiont = versiont;
    }

    @Basic
    @Column(name = "REVIEWED", nullable = false, length = 1)
    public String getReviewed() {
        return reviewed;
    }

    public void setReviewed(String reviewed) {
        this.reviewed = reviewed;
    }

    @Basic
    @Column(name = "REVIEWTIME", nullable = false)
    public BigInteger getReviewtime() {
        return reviewtime;
    }

    public void setReviewtime(BigInteger reviewtime) {
        this.reviewtime = reviewtime;
    }

    @Basic
    @Column(name = "REVIEDUSERID", nullable = false, length = 20)
    public String getRevieduserid() {
        return revieduserid;
    }

    public void setRevieduserid(String revieduserid) {
        this.revieduserid = revieduserid;
    }

    @Basic
    @Column(name = "ISTRANSFER", nullable = false, length = 1)
    public String getIstransfer() {
        return istransfer;
    }

    public void setIstransfer(String istransfer) {
        this.istransfer = istransfer;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        PayMemberWithdrawalsApplyT that = (PayMemberWithdrawalsApplyT) o;
        return versiont == that.versiont &&
                Objects.equals(id, that.id) &&
                Objects.equals(memberid, that.memberid) &&
                Objects.equals(membername, that.membername) &&
                Objects.equals(money, that.money) &&
                Objects.equals(applytime, that.applytime) &&
                Objects.equals(applytype, that.applytype) &&
                Objects.equals(transforaccount, that.transforaccount) &&
                Objects.equals(createtime, that.createtime) &&
                Objects.equals(updatetime, that.updatetime) &&
                Objects.equals(status, that.status) &&
                Objects.equals(drawalsstatus, that.drawalsstatus) &&
                Objects.equals(reviewnoteReviewnote, that.reviewnoteReviewnote) &&
                Objects.equals(note, that.note) &&
                Objects.equals(reviewed, that.reviewed) &&
                Objects.equals(reviewtime, that.reviewtime) &&
                Objects.equals(revieduserid, that.revieduserid) &&
                Objects.equals(istransfer, that.istransfer);
    }

    @Override
    public int hashCode() {
        return Objects.hash(id, memberid, membername, money, applytime, applytype, transforaccount, createtime, updatetime, status, drawalsstatus, reviewnoteReviewnote, note, versiont, reviewed, reviewtime, revieduserid, istransfer);
    }
}
